305 research outputs found
Interface-based hierarchy for synchronous data-flow graphs
International audienceDataflow has proven to be an attractive computation model for programming digital signal processing (DSP) applications. A restricted version of dataflow, termed synchronous dataflow (SDF), offers strong compile-time predictability properties, but has limited expressive power. In this paper we propose a new type of hierarchy in the SDF domain allowing more expressivity while maintaining its predictability. This new hierarchy semantic is based on interfaces that fix the number of tokens consumed/produced by a hierarchical vertex in a manner that is independent or separate from the specified internal dataflow structure of the encapsulated subsystem. This interface-based hierarchy gives the application designer more flexibility in iterative construction of hierarchical representations, and experimentation with different optimization choices at different levels of the design hierarchy
PRUNE: Dynamic and Decidable Dataflow for Signal Processing on Heterogeneous Platforms
The majority of contemporary mobile devices and personal computers are based
on heterogeneous computing platforms that consist of a number of CPU cores and
one or more Graphics Processing Units (GPUs). Despite the high volume of these
devices, there are few existing programming frameworks that target full and
simultaneous utilization of all CPU and GPU devices of the platform.
This article presents a dataflow-flavored Model of Computation (MoC) that has
been developed for deploying signal processing applications to heterogeneous
platforms. The presented MoC is dynamic and allows describing applications with
data dependent run-time behavior. On top of the MoC, formal design rules are
presented that enable application descriptions to be simultaneously dynamic and
decidable. Decidability guarantees compile-time application analyzability for
deadlock freedom and bounded memory.
The presented MoC and the design rules are realized in a novel Open Source
programming environment "PRUNE" and demonstrated with representative
application examples from the domains of image processing, computer vision and
wireless communications. Experimental results show that the proposed approach
outperforms the state-of-the-art in analyzability, flexibility and performance.Comment: This is the author's version of an article that has been published in
this journal. Changes were made to this version by the publisher prior to
publicatio
- …